package com.kaifamiao.www.ioDemo.do0923;

import java.lang.reflect.Field;

public class FieldDemo1 {
    public static void main(String[] args) throws NoSuchFieldException {
        /**
         * 获取域，也就是属性(成员变量)
         */

        //返回Class对象所包含的类的指定的public属性，name参数指定属性名称
        Class<Student> cl = Student.class;
        Field gender = cl.getField("gender");
        System.out.println(gender);

        //getFileds()返回此对象包含的类的所有public属性
        Field[] fields = cl.getFields();
        for (Field field:fields){
            System.out.println(field);

            //getDeclaredFiled()返回对象所包含的指定属性，与属性的访问修饰符无关
            Field fields1 = cl.getDeclaredField("name");
            System.out.println(fields1);
            System.out.println("===========");
            //getDeclaredFileds()返回对象所包含的所有属性，与属性的访问修饰符无关
            Field[] fields2 = cl.getDeclaredFields();
            for (Field field1 : fields2){
                System.out.println(field1);
            }


        }

    }
}
